package com.sgv.model.persistence;

import java.util.List;

import javax.ejb.Local;

import com.archtecture.control.exceptions.NegocioException;
import com.sgv.model.entities.CaixaModel;
import com.sgv.model.entities.ItemCompraModel;
import com.sgv.model.entities.ItemVendaModel;
import com.sgv.model.entities.ProdutoModel;
import com.sgv.model.entities.VendaModel;

@Local
public interface SGVCaixaFacadeLocal {

	String JNDI_NAME = "SGVCaixaFacadeLocal";

	CaixaModel obterUltimoCaixa();

	void inserirItemCompra(ItemCompraModel pItem) throws NegocioException;

	void excluirItemCompra(ItemCompraModel pItem) throws NegocioException;

	void abrirCaixa(CaixaModel pCaixa) throws NegocioException;

	void fecharCaixa(CaixaModel pCaixa) throws NegocioException;

	List<ProdutoModel> obterProdutos(String pNome);

	void salvarItemVenda(VendaModel pVenda, ItemVendaModel pItemVenda) throws NegocioException;

	VendaModel obterVendaAbertaPorUsuario() throws NegocioException;

	void excluirItemVenda(ItemVendaModel pItem);

	void concluirVenda(VendaModel modelCad);

	void cancelarVenda(VendaModel modelCad);

}
